package com.zhijian.medical.dao.local;

import com.zhijian.medical.entity.po.ExperimentProcessSample;
import com.zhijian.medical.entity.vo.request.ExperimentProcessSampleSearchVo;
import com.zhijian.medical.entity.vo.response.ExperimentProcessSampleVo;

import java.util.List;

public interface ExperimentProcessSampleMapper {
    int deleteByPrimaryKey(Long id);

    int insert(ExperimentProcessSample record);

    int insertSelective(ExperimentProcessSample record);

    ExperimentProcessSample selectByPrimaryKey(Long id);

    /**
     * 根据分子病理号查找
     *
     * @param fzblh
     * @return
     */
    ExperimentProcessSample selectByFzblh(String fzblh);

    int updateByPrimaryKeySelective(ExperimentProcessSample record);

    /**
     * 删除与实验流程的关系
     *
     * @param experimentProcessId
     * @return
     */
    boolean removeRelation(Long experimentProcessId,Byte mainType);

    int updateByPrimaryKey(ExperimentProcessSample record);

    int count(ExperimentProcessSampleSearchVo experimentProcessSampleSearchVo);

    List<ExperimentProcessSampleVo> selectList(ExperimentProcessSampleSearchVo experimentProcessSampleSearchVo);

    ExperimentProcessSampleVo selectVoById(Long id);

    /**
     * 根据年份查找出最大的分子病理号
     *
     * @param year
     * @return
     */
    String selectMaxMoleculePathologyNumberByYear(String year);

    List<ExperimentProcessSampleVo> selectListByStatusAndMainType(String status ,String mainType);
}